package xfuzzy.xfghl.stop;

import xfuzzy.xfghl.algorithm.ResultGA;
import xfuzzy.xfghl.stop.StopCondition;

/**
 * Clase que realiza la parada del algoritmo genetico segun el numero de evaluaciones
 * @author Alberto David Fernandez Fernandez
 * */

public class NumeroEvaluaciones extends StopCondition {

	/**
	 * Numero de evaluaciones para la parada
	 * */
	private int numEvaluaciones;
	
	/**
	 * Constructor de la clase
	 * @param numEvaluaciones Numero de evaluaciones para la parada
	 * */
	
	public NumeroEvaluaciones(int numEvaluaciones)  {
		
		this.numEvaluaciones = numEvaluaciones;
	}
	
	public int getNumEvaluaciones() {
		return numEvaluaciones;
	}

	public void setNumEvaluaciones(int numEvaluaciones) {
		this.numEvaluaciones = numEvaluaciones;
	}

	/**
	 * Metodo que realiza la parada del algoritmo
	 * @param conf Datos de ejecucion del algoritmo 
	 * */
	
	public boolean parar(ResultGA conf) {
		
		if (conf.getNumEvaluations() >= this.numEvaluaciones)
			return true;
		return false;
	}
}
